package com.aizhixin.lab.project.course.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import java.util.Date;

@Data
@Entity(name = "c_project_group_task")
public class ProjectGroupTask {
    @Id
    private String id;
    @Column(name = "group_id")
    private String groupId;
    @Column(name = "task_id")
    private String taskId;
    @Column(name = "work_order_id")
    private String workOrderId;
    @Column(name = "stu_id")
    private Long stuId;
    @Column(name = "task_status")
    private String taskStatus;
    @Column(name = "task_grade")
    private Integer taskGrade;
    @Column(name = "task_comment")
    private String taskComment;
    @Column(name = "task_note")
    private String taskNote;
    @Column(name = "task_gain")
    private String taskGain;
    @Column(name = "reality_begin_date")
    private Date realityBeginDate;
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @Column(name = "reality_end_date")
    private Date realityEndDate;
    @Column(name = "plan_begin_date")
    private Date planBeginDate;
    @Column(name = "plan_End_date")
    private Date planEndDate;
    @Column(name = "project_class_id")
    private String projectClassId;
    @Column(name = "task_no")
    private Integer taskNo;
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @Column(name = "created_date")
    private Date createdDate;
    @Column(name = "delete_flag")
    private Integer deleteFlag;
    @Column(name = "project_id")
    private String projectId;
    @Column(name = "language")
    private String language;
    @Column(name = "check_id")
    private Long checkId;
    @Column(name = "task_accessory")
    private String taskAccessory;
    @Column(name = "task_type")
    private Integer taskType;
    @Column(name = "automatic_grade")
    private Integer automaticGrade;
    @Column(name = "automatic_commit")
    private String automaticCommit;
    @Column(name = "file_name")
    private String fileName;
    @Column(name ="is_release_exercises")
    private Boolean isReleaseExercises=false;
    @Column(name ="exercises_name")
    private String exercisesName;
    @Column(name ="is_set_time")
    private Boolean isSetTime=false;
    @Column(name ="duration")
    private Integer duration;
    @Column(name ="exercises_automatic_grade")
    private Integer exercisesAutomaticGrade;
    @Column(name ="exercises_automatic_rank")
    private String exercisesAutomaticRank;
    @Column(name ="exercises_final_grade")
    private String exercisesFinalGrade;
    @Column(name ="exercises_comment")
    private String exercisesComment;
    @Column(name = "exercises_commit_time")
    private Date exercisesCommitTime;
    @Column(name = "exercises_status")
    private String exercisesStatus;
    @Column(name = "exercises_is_show_answer")
    private Boolean exercisesIsShowAnswer;
}
